"""
subject：在终端打印.
date: 2018/8/22
"""
import time, sys
sys.path.append('/root/dev/python')
import mytool.system.system as mysys


def demo_progress_bar():
    """
    function: 在终端演示进度条.
    """
    for i in range(1, 11):
        # os.system('printf "\033c"')
        mysys.getclear()
        s = "[%s] %d %%" % (("=" * i), (i * 10))    # %符号用%%标识.
        print(s)
        time.sleep(1)


def demo_letter():
    """
    function: 在终端打印依次打印26个字母.
    """
    s = [chr(i) for i in range(97, 123)]
    for i in range(len(s)):
        mysys.getclear()
        for j in range(i):
            print(s[j], end=' ', flush=True)    # 注意：这里的flush默认是False，不会一批一批的打印，需要该成True.
        time.sleep(1)


def demo_snake():
    """
    function: 在终端打印一个长10宽10的方框。
    """
    size = 10       # 长宽都是10.
    symbol = "*"    # 以星号打印边框。
    l = range(size)
    for i in l:
        if i == 0 or i == len(l) - 1:   # 打印行首和行尾。
            print(symbol * size)
        else:                           # 打印除行首和行尾中间部分。
            print(symbol, end='')
            for _ in range(8):
                print(' ', end='')
            print(symbol)


demo_snake()
